package com.sztx.pay.center.core.service.bean.rpc;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@SuppressWarnings("serial")
public class PayFlow implements Serializable {
	
	/**
	 * 支付流水单号
	 */
	private String payFlowNo;

	/**
	 * 交易订单号
	 */
	private String tradeOrderNo;

	/**
	 * 支付网关订单号
	 */
	private String gatewayOrderNo;

	/**
	 * 支付发起方登录账号
	 */
	private String payerUserId;

	/**
	 * 支付发起方用户类型 1 个人客户 2 商户 3 代理商
	 */
	private String payerUserTypeStr;

	/**
	 * 支付发起方资金账户ID
	 */
	private String payerActNo;

	/**
	 * 支付发起方资金账户类型
	 */
	private String payerActTypeStr;

	/**
	 * 支付发起方在通付的账户号
	 */
	private String payerTfActNo;

	/**
	 * 支付发起方银行名称
	 */
	private String payerBankName;

	/**
	 * 支付发起方银行账号 25位
	 */
	private String payerBankAct;

	/**
	 * 支付发起方银行户名
	 */
	private String payerBankActName;

	/**
	 * 发起方卡类型 1 借记卡 2 信用卡
	 */
	private String payerCardTypeStr;

	/**
	 * 发起方银行卡对公还是对私 1 对私账户 2对公账户
	 */
	private String payerCardActTypeStr;

	/**
	 * 发起方CVV 4位
	 */
	private String payerBankActCvv;

	/**
	 * 发起方有效期 6位
	 */
	private String payerBankActExpire;

	/**
	 * 发起方银行卡归属省份
	 */
	private String payerBankProvince;

	/**
	 * 发起方银行卡归属城市
	 */
	private String payerBankCity;

	/**
	 * 发起方手机号 25位
	 */
	private String payerMobile;

	/**
	 * 发起方证件类型：1 身份证
	 */
	private String payerIdentityTypeStr;

	/**
	 * 发起方证件号 25位
	 */
	private String payerIdentityNo;

	/**
	 * 支付接收方内部ID
	 */
	private String payeeUserId;

	/**
	 * 支付接收方用户类型 1 个人客户 2 商户 3 代理商
	 */
	private String payeeUserTypeStr;

	/**
	 * 支付接收方资金账户ID
	 */
	private String payeeActNo;

	/**
	 * 支付接收方资金账户类型
	 */
	private String payeeActTypeStr;

	/**
	 * 支付接收方在通付的账户号
	 */
	private String payeeTfActNo;

	/**
	 * 支付接收方银行账号 25位
	 */
	private String payeeBankAct;

	/**
	 * 支付接收方银行户名
	 */
	private String payeeBankActName;

	/**
	 * 支付接收方银行卡对公还是对私 1 对私账户 2对公账户
	 */
	private String payeeCardActTypeStr;

	/**
	 * 支付接收方银行卡归属省份
	 */
	private String payeeBankProvince;

	/**
	 * 支付接收方银行卡归属城市
	 */
	private String payeeBankCity;

	/**
	 * 交易结束时间（入账时间）
	 */
	private Date payTime;

	/**
	 * 支付流水类型：1 收款 2 付款 3 转账
	 */
	private String payTypeStr;

	/**
	 * 支付总单类型：1 B2C 2充值 3 提现 4 转账 5退款 6 结算 7绑卡
	 */
	private String tradeOrderTypeStr;

	/**
	 * 订单金额
	 */
	private BigDecimal amount;

	/**
	 * 支付渠道
	 */
	private String payChannelId;

    /**
    * 支付渠道文字描述
     */
    private String payChannelStr;
    
	/**
	 * 支付状态： 1未支付 2 支付中 3 成功 4 失败 5 异常
	 */
	private String payStatusStr;

	/**
	 * 备注
	 */
	private String remark;

	/**
	 * 创建时间
	 */
	private Date createTime;

	/**
	 * 修改时间
	 */
	private Date modifyTime;

	/**
	 * 批量订单ID
	 */
	private String batchOrderId;

	/**
	 * 回调通知服务名
	 */
	private String callBackServiceName;
	/**
	 * 支付订单号
	 */
	private String originOrderNo;

	/**
	 * 统计是否被处理0:未处理,1:已处理
	 */
	private String handleStatusStr;

	/**
	 * 处理次数
	 */
	private int executeTimes;

	private String mappingTradeOrderId;

	/**
	 * @return the payFlowNo
	 */
	public String getPayFlowNo() {
		return payFlowNo;
	}

	/**
	 * @param payFlowNo the payFlowNo to set
	 */
	public void setPayFlowNo(String payFlowNo) {
		this.payFlowNo = payFlowNo;
	}

	/**
	 * @return the tradeOrderNo
	 */
	public String getTradeOrderNo() {
		return tradeOrderNo;
	}

	/**
	 * @param tradeOrderNo the tradeOrderNo to set
	 */
	public void setTradeOrderNo(String tradeOrderNo) {
		this.tradeOrderNo = tradeOrderNo;
	}

	/**
	 * @return the gatewayOrderNo
	 */
	public String getGatewayOrderNo() {
		return gatewayOrderNo;
	}

	/**
	 * @param gatewayOrderNo the gatewayOrderNo to set
	 */
	public void setGatewayOrderNo(String gatewayOrderNo) {
		this.gatewayOrderNo = gatewayOrderNo;
	}

	/**
	 * @return the payerUserId
	 */
	public String getPayerUserId() {
		return payerUserId;
	}

	/**
	 * @param payerUserId the payerUserId to set
	 */
	public void setPayerUserId(String payerUserId) {
		this.payerUserId = payerUserId;
	}

	/**
	 * @return the payerUserTypeStr
	 */
	public String getPayerUserTypeStr() {
		return payerUserTypeStr;
	}

	/**
	 * @param payerUserTypeStr the payerUserTypeStr to set
	 */
	public void setPayerUserTypeStr(String payerUserTypeStr) {
		this.payerUserTypeStr = payerUserTypeStr;
	}

	/**
	 * @return the payerActNo
	 */
	public String getPayerActNo() {
		return payerActNo;
	}

	/**
	 * @param payerActNo the payerActNo to set
	 */
	public void setPayerActNo(String payerActNo) {
		this.payerActNo = payerActNo;
	}

	/**
	 * @return the payerActTypeStr
	 */
	public String getPayerActTypeStr() {
		return payerActTypeStr;
	}

	/**
	 * @param payerActTypeStr the payerActTypeStr to set
	 */
	public void setPayerActTypeStr(String payerActTypeStr) {
		this.payerActTypeStr = payerActTypeStr;
	}

	/**
	 * @return the payerTfActNo
	 */
	public String getPayerTfActNo() {
		return payerTfActNo;
	}

	/**
	 * @param payerTfActNo the payerTfActNo to set
	 */
	public void setPayerTfActNo(String payerTfActNo) {
		this.payerTfActNo = payerTfActNo;
	}

	/**
	 * @return the payerBankName
	 */
	public String getPayerBankName() {
		return payerBankName;
	}

	/**
	 * @param payerBankName the payerBankName to set
	 */
	public void setPayerBankName(String payerBankName) {
		this.payerBankName = payerBankName;
	}

	/**
	 * @return the payerBankAct
	 */
	public String getPayerBankAct() {
		return payerBankAct;
	}

	/**
	 * @param payerBankAct the payerBankAct to set
	 */
	public void setPayerBankAct(String payerBankAct) {
		this.payerBankAct = payerBankAct;
	}

	/**
	 * @return the payerBankActName
	 */
	public String getPayerBankActName() {
		return payerBankActName;
	}

	/**
	 * @param payerBankActName the payerBankActName to set
	 */
	public void setPayerBankActName(String payerBankActName) {
		this.payerBankActName = payerBankActName;
	}

	/**
	 * @return the payerCardTypeStr
	 */
	public String getPayerCardTypeStr() {
		return payerCardTypeStr;
	}

	/**
	 * @param payerCardTypeStr the payerCardTypeStr to set
	 */
	public void setPayerCardTypeStr(String payerCardTypeStr) {
		this.payerCardTypeStr = payerCardTypeStr;
	}

	/**
	 * @return the payerCardActTypeStr
	 */
	public String getPayerCardActTypeStr() {
		return payerCardActTypeStr;
	}

	/**
	 * @param payerCardActTypeStr the payerCardActTypeStr to set
	 */
	public void setPayerCardActTypeStr(String payerCardActTypeStr) {
		this.payerCardActTypeStr = payerCardActTypeStr;
	}

	/**
	 * @return the payerBankActCvv
	 */
	public String getPayerBankActCvv() {
		return payerBankActCvv;
	}

	/**
	 * @param payerBankActCvv the payerBankActCvv to set
	 */
	public void setPayerBankActCvv(String payerBankActCvv) {
		this.payerBankActCvv = payerBankActCvv;
	}

	/**
	 * @return the payerBankActExpire
	 */
	public String getPayerBankActExpire() {
		return payerBankActExpire;
	}

	/**
	 * @param payerBankActExpire the payerBankActExpire to set
	 */
	public void setPayerBankActExpire(String payerBankActExpire) {
		this.payerBankActExpire = payerBankActExpire;
	}

	/**
	 * @return the payerBankProvince
	 */
	public String getPayerBankProvince() {
		return payerBankProvince;
	}

	/**
	 * @param payerBankProvince the payerBankProvince to set
	 */
	public void setPayerBankProvince(String payerBankProvince) {
		this.payerBankProvince = payerBankProvince;
	}

	/**
	 * @return the payerBankCity
	 */
	public String getPayerBankCity() {
		return payerBankCity;
	}

	/**
	 * @param payerBankCity the payerBankCity to set
	 */
	public void setPayerBankCity(String payerBankCity) {
		this.payerBankCity = payerBankCity;
	}

	/**
	 * @return the payerMobile
	 */
	public String getPayerMobile() {
		return payerMobile;
	}

	/**
	 * @param payerMobile the payerMobile to set
	 */
	public void setPayerMobile(String payerMobile) {
		this.payerMobile = payerMobile;
	}

	/**
	 * @return the payerIdentityTypeStr
	 */
	public String getPayerIdentityTypeStr() {
		return payerIdentityTypeStr;
	}

	/**
	 * @param payerIdentityTypeStr the payerIdentityTypeStr to set
	 */
	public void setPayerIdentityTypeStr(String payerIdentityTypeStr) {
		this.payerIdentityTypeStr = payerIdentityTypeStr;
	}

	/**
	 * @return the payerIdentityNo
	 */
	public String getPayerIdentityNo() {
		return payerIdentityNo;
	}

	/**
	 * @param payerIdentityNo the payerIdentityNo to set
	 */
	public void setPayerIdentityNo(String payerIdentityNo) {
		this.payerIdentityNo = payerIdentityNo;
	}

	/**
	 * @return the payeeUserId
	 */
	public String getPayeeUserId() {
		return payeeUserId;
	}

	/**
	 * @param payeeUserId the payeeUserId to set
	 */
	public void setPayeeUserId(String payeeUserId) {
		this.payeeUserId = payeeUserId;
	}

	/**
	 * @return the payeeUserTypeStr
	 */
	public String getPayeeUserTypeStr() {
		return payeeUserTypeStr;
	}

	/**
	 * @param payeeUserTypeStr the payeeUserTypeStr to set
	 */
	public void setPayeeUserTypeStr(String payeeUserTypeStr) {
		this.payeeUserTypeStr = payeeUserTypeStr;
	}

	/**
	 * @return the payeeActNo
	 */
	public String getPayeeActNo() {
		return payeeActNo;
	}

	/**
	 * @param payeeActNo the payeeActNo to set
	 */
	public void setPayeeActNo(String payeeActNo) {
		this.payeeActNo = payeeActNo;
	}

	/**
	 * @return the payeeActTypeStr
	 */
	public String getPayeeActTypeStr() {
		return payeeActTypeStr;
	}

	/**
	 * @param payeeActTypeStr the payeeActTypeStr to set
	 */
	public void setPayeeActTypeStr(String payeeActTypeStr) {
		this.payeeActTypeStr = payeeActTypeStr;
	}

	/**
	 * @return the payeeTfActNo
	 */
	public String getPayeeTfActNo() {
		return payeeTfActNo;
	}

	/**
	 * @param payeeTfActNo the payeeTfActNo to set
	 */
	public void setPayeeTfActNo(String payeeTfActNo) {
		this.payeeTfActNo = payeeTfActNo;
	}

	/**
	 * @return the payeeBankAct
	 */
	public String getPayeeBankAct() {
		return payeeBankAct;
	}

	/**
	 * @param payeeBankAct the payeeBankAct to set
	 */
	public void setPayeeBankAct(String payeeBankAct) {
		this.payeeBankAct = payeeBankAct;
	}

	/**
	 * @return the payeeBankActName
	 */
	public String getPayeeBankActName() {
		return payeeBankActName;
	}

	/**
	 * @param payeeBankActName the payeeBankActName to set
	 */
	public void setPayeeBankActName(String payeeBankActName) {
		this.payeeBankActName = payeeBankActName;
	}

	/**
	 * @return the payeeCardActTypeStr
	 */
	public String getPayeeCardActTypeStr() {
		return payeeCardActTypeStr;
	}

	/**
	 * @param payeeCardActTypeStr the payeeCardActTypeStr to set
	 */
	public void setPayeeCardActTypeStr(String payeeCardActTypeStr) {
		this.payeeCardActTypeStr = payeeCardActTypeStr;
	}

	/**
	 * @return the payeeBankProvince
	 */
	public String getPayeeBankProvince() {
		return payeeBankProvince;
	}

	/**
	 * @param payeeBankProvince the payeeBankProvince to set
	 */
	public void setPayeeBankProvince(String payeeBankProvince) {
		this.payeeBankProvince = payeeBankProvince;
	}

	/**
	 * @return the payeeBankCity
	 */
	public String getPayeeBankCity() {
		return payeeBankCity;
	}

	/**
	 * @param payeeBankCity the payeeBankCity to set
	 */
	public void setPayeeBankCity(String payeeBankCity) {
		this.payeeBankCity = payeeBankCity;
	}

	/**
	 * @return the payTime
	 */
	public Date getPayTime() {
		return payTime;
	}

	/**
	 * @param payTime the payTime to set
	 */
	public void setPayTime(Date payTime) {
		this.payTime = payTime;
	}

	/**
	 * @return the payTypeStr
	 */
	public String getPayTypeStr() {
		return payTypeStr;
	}

	/**
	 * @param payTypeStr the payTypeStr to set
	 */
	public void setPayTypeStr(String payTypeStr) {
		this.payTypeStr = payTypeStr;
	}

	/**
	 * @return the tradeOrderTypeStr
	 */
	public String getTradeOrderTypeStr() {
		return tradeOrderTypeStr;
	}

	/**
	 * @param tradeOrderTypeStr the tradeOrderTypeStr to set
	 */
	public void setTradeOrderTypeStr(String tradeOrderTypeStr) {
		this.tradeOrderTypeStr = tradeOrderTypeStr;
	}

	/**
	 * @return the amount
	 */
	public BigDecimal getAmount() {
		return amount;
	}

	/**
	 * @param amount the amount to set
	 */
	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	/**
	 * @return the payChannelId
	 */
	public String getPayChannelId() {
		return payChannelId;
	}

	/**
	 * @param payChannelId the payChannelId to set
	 */
	public void setPayChannelId(String payChannelId) {
		this.payChannelId = payChannelId;
	}

	public String getPayChannelStr() {
		return payChannelStr;
	}

	public void setPayChannelStr(String payChannelStr) {
		this.payChannelStr = payChannelStr;
	}

	/**
	 * @return the payStatusStr
	 */
	public String getPayStatusStr() {
		return payStatusStr;
	}

	/**
	 * @param payStatusStr the payStatusStr to set
	 */
	public void setPayStatusStr(String payStatusStr) {
		this.payStatusStr = payStatusStr;
	}

	/**
	 * @return the remark
	 */
	public String getRemark() {
		return remark;
	}

	/**
	 * @param remark the remark to set
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}

	/**
	 * @return the createTime
	 */
	public Date getCreateTime() {
		return createTime;
	}

	/**
	 * @param createTime the createTime to set
	 */
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	/**
	 * @return the modifyTime
	 */
	public Date getModifyTime() {
		return modifyTime;
	}

	/**
	 * @param modifyTime the modifyTime to set
	 */
	public void setModifyTime(Date modifyTime) {
		this.modifyTime = modifyTime;
	}

	/**
	 * @return the batchOrderId
	 */
	public String getBatchOrderId() {
		return batchOrderId;
	}

	/**
	 * @param batchOrderId the batchOrderId to set
	 */
	public void setBatchOrderId(String batchOrderId) {
		this.batchOrderId = batchOrderId;
	}

	/**
	 * @return the callBackServiceName
	 */
	public String getCallBackServiceName() {
		return callBackServiceName;
	}

	/**
	 * @param callBackServiceName the callBackServiceName to set
	 */
	public void setCallBackServiceName(String callBackServiceName) {
		this.callBackServiceName = callBackServiceName;
	}

	/**
	 * @return the originOrderNo
	 */
	public String getOriginOrderNo() {
		return originOrderNo;
	}

	/**
	 * @param originOrderNo the originOrderNo to set
	 */
	public void setOriginOrderNo(String originOrderNo) {
		this.originOrderNo = originOrderNo;
	}

	/**
	 * @return the handleStatusStr
	 */
	public String getHandleStatusStr() {
		return handleStatusStr;
	}

	/**
	 * @param handleStatusStr the handleStatusStr to set
	 */
	public void setHandleStatusStr(String handleStatusStr) {
		this.handleStatusStr = handleStatusStr;
	}

	/**
	 * @return the executeTimes
	 */
	public int getExecuteTimes() {
		return executeTimes;
	}

	/**
	 * @param executeTimes the executeTimes to set
	 */
	public void setExecuteTimes(int executeTimes) {
		this.executeTimes = executeTimes;
	}

	/**
	 * @return the mappingTradeOrderId
	 */
	public String getMappingTradeOrderId() {
		return mappingTradeOrderId;
	}

	/**
	 * @param mappingTradeOrderId the mappingTradeOrderId to set
	 */
	public void setMappingTradeOrderId(String mappingTradeOrderId) {
		this.mappingTradeOrderId = mappingTradeOrderId;
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "PayFlow [payFlowNo=" + payFlowNo + ", tradeOrderNo="
				+ tradeOrderNo + ", gatewayOrderNo=" + gatewayOrderNo
				+ ", payerUserId=" + payerUserId + ", payerUserTypeStr="
				+ payerUserTypeStr + ", payerActNo=" + payerActNo
				+ ", payerActTypeStr=" + payerActTypeStr + ", payerTfActNo="
				+ payerTfActNo + ", payerBankName=" + payerBankName
				+ ", payerBankAct=" + payerBankAct + ", payerBankActName="
				+ payerBankActName + ", payerCardTypeStr=" + payerCardTypeStr
				+ ", payerCardActTypeStr=" + payerCardActTypeStr
				+ ", payerBankActCvv=" + payerBankActCvv
				+ ", payerBankActExpire=" + payerBankActExpire
				+ ", payerBankProvince=" + payerBankProvince
				+ ", payerBankCity=" + payerBankCity + ", payerMobile="
				+ payerMobile + ", payerIdentityTypeStr="
				+ payerIdentityTypeStr + ", payerIdentityNo=" + payerIdentityNo
				+ ", payeeUserId=" + payeeUserId + ", payeeUserTypeStr="
				+ payeeUserTypeStr + ", payeeActNo=" + payeeActNo
				+ ", payeeActTypeStr=" + payeeActTypeStr + ", payeeTfActNo="
				+ payeeTfActNo + ", payeeBankAct=" + payeeBankAct
				+ ", payeeBankActName=" + payeeBankActName
				+ ", payeeCardActTypeStr=" + payeeCardActTypeStr
				+ ", payeeBankProvince=" + payeeBankProvince
				+ ", payeeBankCity=" + payeeBankCity + ", payTime=" + payTime
				+ ", payTypeStr=" + payTypeStr + ", tradeOrderTypeStr="
				+ tradeOrderTypeStr + ", amount=" + amount + ", payChannelId="
				+ payChannelId + ", payStatusStr=" + payStatusStr + ", remark="
				+ remark + ", createTime=" + createTime + ", modifyTime="
				+ modifyTime + ", batchOrderId=" + batchOrderId
				+ ", callBackServiceName=" + callBackServiceName
				+ ", originOrderNo=" + originOrderNo + ", handleStatusStr="
				+ handleStatusStr + ", executeTimes=" + executeTimes
				+ ", mappingTradeOrderId=" + mappingTradeOrderId + "]";
	}

}